package io;

import java.io.*;

/**
 *    使用缓冲流完成文件的读写
 *
 *    缓冲流:java.io.BufferedInputStream和BufferedOutputStream
 *    它们是一对高级流,在流连接中的作用是加快读写效率
 *
 *    缓冲流内部维护一个缓冲区,默认长度为8k.
 *    缓冲流最终会将读写数据统一转换为块读写来保证读写效率.
 *
 *
 */
public class CopyDemo3 {
    public static void main(String[] args) throws IOException {
        FileInputStream fis = new FileInputStream("acdc.mp4");
        BufferedInputStream bis = new BufferedInputStream(fis);

        FileOutputStream fos = new FileOutputStream("acdc1.mp4");
        BufferedOutputStream bos = new BufferedOutputStream(fos);

        int d;
//        long sta = System.currentTimeMillis();
        while ((d = bis.read()) != -1){
            bos.write(d);
        }
//        long end = System.currentTimeMillis();
//        System.out.println((end-sta)+"ms");
        bis.close();
        bos.close();
    }
}
